﻿using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using Arch.Client.IoC;
using Arch.Samples.RiaServices.Views.SubCategories;
using Microsoft.Practices.Unity;
using Arch.Samples.RiaServices.Services;
using Arch.Samples.RiaServices.ViewModels;
using Arch.Samples.RiaServices.Views.Categories;
using Arch.Samples.RiaServices.Views.Todos;

namespace Arch.Samples.RiaServices.Infrastructure
{
    public class DependencyContainer : ClientDependencyContainer
    {
        //public override Assembly AssemblyModel { get { return typeof(Todo).Assembly; } }

        public override void RegisterTypes(IUnityContainer container)
        {
            container
                .RegisterView<TodoList, TodoListViewModel>()
                .RegisterView<TodoSearch, TodoSearchViewModel>()
                .RegisterView<CategoryList, CategoryListViewModel>()
                .RegisterView<SubCategoryList, SubCategoryListViewModel>()
                .RegisterType<TodoContext, TodoContext>(new InjectionConstructor())
            ;
        }
    }
}
